package com.tjn.set_;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/**
 * @author 陶镓妮
 * @version 1.0
 */
public class SetMethod {
    @SuppressWarnings("all")
    public static void main(String[] args) {
        //Set接口是Collection的子接口，所以常用方法和Collection接口的一样
        Set hashSet = new HashSet();
        hashSet.add("1");
        hashSet.add("2");
        hashSet.add("3");
        hashSet.add("2");//重复
        hashSet.add("5");
        hashSet.add(null);
        hashSet.add(null);//再一次添加null
        //Set接口实现类的对象不能存放重复的元素，可以存放一个null
        //添加的元素和取出的元素顺序不一样，但是是固定的
        System.out.println(hashSet);//[null, 1, 2, 3, 5]

        //遍历方式：1.使用迭代器，2.使用增强for，没有索引，所以不能使用普通for
        //1.迭代器
        System.out.println("===迭代器===");
        Iterator iterator = hashSet.iterator();
        while(iterator.hasNext()){
            Object o = iterator.next();
            System.out.println(o);
        }

        //2.增强for
        System.out.println("===增强for===");
        for (Object o : hashSet) {
            System.out.println(o);
        }

    }
}
